#include <binder/IServiceManager.h>
#include <cutils/properties.h>
#include <binder/BinderService.h>

#include "ITestNativeService.h"

namespace android {
//public BinderService<TestNativeService>,
class TestNativeService : public BnTestNativeService
{
    //friend class BinderService<TestNativeService>;
    //static char const* getServiceName() { return "TestNativeService"; };

public:
    static TestNativeService* instantiate();

    TestNativeService();
    ~TestNativeService();

    virtual int verify();

    virtual status_t dump(int fd, const Vector<String16>& args);

private:
    int verifyPass;
    char license[PROPERTY_VALUE_MAX];
    char checkResult[PROPERTY_VALUE_MAX];

    // protected by mLock
    mutable Mutex mLock;
};

}; // namespace android
